package com.hioove.core.model.base.config;

import java.lang.annotation.Annotation;
import java.lang.reflect.Field;
import java.util.List;

/**
 * 主要用于程序运行中的类的属性基本信息
 */
public class FieldSupport {
    // 类属性名称
    private String name;
    // 类属性上所有注解
    private List<Annotation> annotations;
    // 类属性的类型
    private Class<?> fieldType;
    // 类的全部信息详细看ClassSupport.class
    private ClassSupport classSupport;
    // 类的属性
    private Field field;
    // 类的实例对象
    private Object instance;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public List<Annotation> getAnnotations() {
        return annotations;
    }

    public void setAnnotations(List<Annotation> annotations) {
        this.annotations = annotations;
    }

    public Class<?> getFieldType() {
        return fieldType;
    }

    public void setFieldType(Class<?> fieldType) {
        this.fieldType = fieldType;
    }

    public ClassSupport getClassSupport() {
        return classSupport;
    }

    public void setClassSupport(ClassSupport classSupport) {
        this.classSupport = classSupport;
    }

    public Field getField() {
        return field;
    }

    public void setField(Field field) {
        this.field = field;
    }

    public Object getInstance() {
        return instance;
    }

    public void setInstance(Object instance) {
        this.instance = instance;
    }
}
